
<!DOCTYPE html>

<html>
  
<!-- Mirrored from docs.sympy.org/latest/modules/holonomic/about.html by HTTrack Website Copier/3.x [XR&CO'2014], Sat, 15 Jan 2022 03:28:19 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=utf-8" /><!-- /Added by HTTrack -->
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />

    <title>About Holonomic Functions &#8212; SymPy 1.9 documentation</title>
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/default.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css" />
    <link rel="stylesheet" type="text/css" href="../../_static/plot_directive.css" />
    <link rel="stylesheet" type="text/css" href="../../../../live.sympy.org/static/live-core.css" />
    <link rel="stylesheet" type="text/css" href="../../../../live.sympy.org/static/live-autocomplete.css" />
    <link rel="stylesheet" type="text/css" href="../../../../live.sympy.org/static/live-sphinx.css" />
    
    <script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script>
    <script src="../../_static/jquery.js"></script>
    <script src="../../_static/underscore.js"></script>
    <script src="../../_static/doctools.js"></script>
    <script src="../../../../live.sympy.org/static/utilities.js"></script>
    <script src="../../../../live.sympy.org/static/external/classy.js"></script>
    <script src="../../../../live.sympy.org/static/live-core.js"></script>
    <script src="../../../../live.sympy.org/static/live-autocomplete.js"></script>
    <script src="../../../../live.sympy.org/static/live-sphinx.js"></script>
    <script async="async" src="../../../../cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest8331.js?config=TeX-AMS_HTML-full"></script>
    <script type="text/x-mathjax-config">MathJax.Hub.Config({"tex2jax": {"inlineMath": [["\\(", "\\)"]], "displayMath": [["\\[", "\\]"]]}})</script>
    
    <link rel="shortcut icon" href="../../_static/sympy-notailtext-favicon.ico"/>
    <link href="about.html" rel="canonical" />
    
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="Representation of holonomic functions in SymPy" href="represent.html" />
    <link rel="prev" title="Holonomic" href="index.html" /> 
  </head><body>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="represent.html" title="Representation of holonomic functions in SymPy"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="index.html" title="Holonomic"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../../index.html">SymPy 1.9 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="../index.html" >SymPy Modules Reference</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="index.html" accesskey="U">Holonomic</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="#">About Holonomic Functions</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="about-holonomic-functions">
<h1>About Holonomic Functions<a class="headerlink" href="#about-holonomic-functions" title="Permalink to this headline">¶</a></h1>
<p>This text aims to explain holonomic functions. We assume you
have a basic idea of Differential equations and Abstract algebra.</p>
<section id="definition">
<h2>Definition<a class="headerlink" href="#definition" title="Permalink to this headline">¶</a></h2>
<p>Holonomic function is a very general type of special function that includes
lots of simple known functions as its special cases. In fact the more known
hypergeometric function and Meijer G-function are also a special case of it.</p>
<p>A function is called holonomic if it’s a solution to an ordinary differential
equation having polynomial coefficients only.
Since the general solution of a differential equation consists of a family of
functions rather than a single function, holonomic functions are usually defined
by a set of initial conditions along with the differential equation.</p>
<p>Let <span class="math notranslate nohighlight">\(K\)</span> be a field of characteristic <code class="docutils literal notranslate"><span class="pre">0</span></code>. For example, <span class="math notranslate nohighlight">\(K\)</span> can be
<code class="docutils literal notranslate"><span class="pre">QQ</span></code> or <code class="docutils literal notranslate"><span class="pre">RR</span></code>.
A function <span class="math notranslate nohighlight">\(f(x)\)</span> will be holonomic if there exists polynomials
<span class="math notranslate nohighlight">\(p_0, p_1, p_2, ... p_r \in K[x]\)</span> such that</p>
<div class="math notranslate nohighlight">
\[p_0 \cdot f(x) + p_1 \cdot f^{(1)}(x) + p_2 \cdot f^{(2)}(x) + ... + p_r \cdot f^{(r)}(x) = 0\]</div>
<p>This differential equation can also be written as <span class="math notranslate nohighlight">\(L \cdot f(x) = 0\)</span> where</p>
<div class="math notranslate nohighlight">
\[L = p_0 + p_1 \cdot D + p_2 \cdot D^2 + ... p_r \cdot D^r\]</div>
<p>Here <span class="math notranslate nohighlight">\(D\)</span> is the Differential Operator and <span class="math notranslate nohighlight">\(L\)</span> is called the annihilator
of the function.</p>
<p>A unique holonomic function can be defined from the annihilator and a set of
initial conditions.
For instance:</p>
<div class="math notranslate nohighlight">
\[ \begin{align}\begin{aligned}f(x) = \exp(x): L = D - 1,\: f(0) = 1\\f(x) = \sin(x): L = D^2 + 1,\: f(0) = 0, f'(0) = 1\end{aligned}\end{align} \]</div>
<p>Other fundamental functions such as <span class="math notranslate nohighlight">\(\cos(x)\)</span>, <span class="math notranslate nohighlight">\(\log(x)\)</span>, bessel functions etc. are also holonomic.</p>
<p>The family of holonomic functions is closed under addition, multiplication, integration,
composition. This means if two functions are given are holonomic, then the
function resulting on applying these operation on them will also be holonomic.</p>
</section>
<section id="references">
<h2>References<a class="headerlink" href="#references" title="Permalink to this headline">¶</a></h2>
<p><a class="reference external" href="https://en.wikipedia.org/wiki/Holonomic_function">https://en.wikipedia.org/wiki/Holonomic_function</a></p>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../../index.html">
              <img class="logo" src="../../_static/sympylogo.png" alt="Logo"/>
            </a></p>
  <h3><a href="../../index.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">About Holonomic Functions</a><ul>
<li><a class="reference internal" href="#definition">Definition</a></li>
<li><a class="reference internal" href="#references">References</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="index.html"
                        title="previous chapter">Holonomic</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="represent.html"
                        title="next chapter">Representation of holonomic functions in SymPy</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../../_sources/modules/holonomic/about.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="https://docs.sympy.org/latest/search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</div>
<script>$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="represent.html" title="Representation of holonomic functions in SymPy"
             >next</a> |</li>
        <li class="right" >
          <a href="index.html" title="Holonomic"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../../index.html">SymPy 1.9 documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="../index.html" >SymPy Modules Reference</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="index.html" >Holonomic</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="#">About Holonomic Functions</a></li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
        &#169; Copyright 2021 SymPy Development Team.
      Last updated on Sep 30, 2021.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.1.2.
    </div>
  </body>

<!-- Mirrored from docs.sympy.org/latest/modules/holonomic/about.html by HTTrack Website Copier/3.x [XR&CO'2014], Sat, 15 Jan 2022 03:28:20 GMT -->
</html>